package com.ruoyi.bizsys.domain;

import java.math.BigDecimal;

import com.ruoyi.common.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.util.Date;

import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.IdType;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * monnify订单对象 ext_monnify_order
 *
 * @author african-loan
 * @date 2021-12-30
 */
@Data
public class ExtMonnifyOrder extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @Excel(name = "ID", readConverterExp = "id")
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 客户号
     */
    @Excel(name = "客户号")
    private String custNo;

    /**
     * 内部订单号,同repayment_no
     */
    @Excel(name = "内部订单号,同repayment_no")
    private String paymentReference;

    /**
     * 第三方订单号
     */
    @Excel(name = "第三方订单号")
    private String transactionReference;

    /**
     * 已付金额
     */

    @Excel(name = "已付金额")
    private BigDecimal amountPaid;


    /**
     * 需付总金额
     */

    @Excel(name = "需付总金额")
    private BigDecimal totalPayable;


    /**
     * 结算金额
     */

    @Excel(name = "结算金额")
    private BigDecimal settlementAmount;


    /**
     * 支付时间
     */

    @Excel(name = "支付时间")
    private String paidOn;


    /**
     * 支付状态
     */

    @Excel(name = "支付状态")
    private String paymentStatus;


    /**
     * 支付备注
     */

    @Excel(name = "支付备注")
    private String paymentDescription;


    /**
     * 币种
     */

    @Excel(name = "币种")
    private String currency;


    /**
     * 支付方式
     */

    @Excel(name = "支付方式")
    private String paymentMethod;


    /**
     * 产品类型
     */

    @Excel(name = "产品类型")
    private String productType;


    /**
     * 产品编号
     */

    @Excel(name = "产品编号")
    private String productReference;


    /**
     * 卡详情
     */

    @Excel(name = "卡详情")
    private String cardDetails;


    /**
     * 账号名称
     */

    @Excel(name = "账号名称")
    private String accountDetailsAccountName;


    /**
     * 账号编码
     */

    @Excel(name = "账号编码")
    private String accountDetailsAccountNumber;


    /**
     * 账号银行编码
     */

    @Excel(name = "账号银行编码")
    private String accountDetailsBankCode;


    /**
     * 账号支付金额
     */

    @Excel(name = "账号支付金额")
    private String accountDetailsAmountPaid;


    /**
     * 顾客邮箱
     */

    @Excel(name = "顾客邮箱")
    private String customerEmail;


    /**
     * 顾客姓名
     */

    @Excel(name = "顾客姓名")
    private String customerName;


    /**
     * 元数据名称
     */

    @Excel(name = "元数据名称")
    private String metaDataName;


    /**
     * 元数据年龄
     */

    @Excel(name = "元数据年龄")
    private String metaDataAge;


    /**
     * 类型
     */

    @Excel(name = "类型")
    private String type;


    /**
     * 源报文
     */
    @Excel(name = "源报文")
    private String sourceData;

    /**
     * 事件类型
     */
    @Excel(name = "事件类型")
    private String eventType;


    /**
     * 状态
     */

    @Excel(name = "状态")
    private String state;

    /**mq消费0未消费1消费**/
    private Integer status;

    /**
     * 备注
     */
    @Excel(name = "备注")
    private String remark;

    /**
     * 创建者
     */
    @Excel(name = "创建者")
    private String createBy;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createTime;

    /**
     * 更新者
     */
    @Excel(name = "更新者")
    private String updateBy;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updateTime;

}